/*******************************************************************************
 * Copyright (c) 2016 IS2T S.A. Operating under the brand name MicroEJ(r).
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Apache License v2.0
 * which accompanies this distribution, and is available at
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Contributors:
 *    {Sebastien Eon, MicroEJ} - initial API and implementation and/or initial documentation
 *******************************************************************************/

package org.eclipse.edje.util;

/**
 * Queue of data.
 * 
 * @param <T>
 *            data type
 */
public abstract class Queue<T> {

	/**
	 * Creates a new queue.
	 */
	public Queue() {
	}

	/**
	 * Returns the next data to process. This method blocks until data is
	 * available.
	 * 
	 * @return data to be processed
	 */
	public abstract T poll();

}
